load("~/Downloads/bookings_train.RData")

library("tidymodels")
## ── Attaching packages ────────────────────────────────────── tidymodels 1.0.0 ──
## ✔ broom        1.0.0     ✔ recipes      1.0.2
## ✔ dials        1.0.0     ✔ rsample      1.1.0
## ✔ dplyr        1.0.9     ✔ tibble       3.1.8
## ✔ ggplot2      3.3.6     ✔ tidyr        1.2.0
## ✔ infer        1.0.3     ✔ tune         1.0.1
## ✔ modeldata    1.0.1     ✔ workflows    1.1.0
## ✔ parsnip      1.0.2     ✔ workflowsets 1.0.0
## ✔ purrr        0.3.4     ✔ yardstick    1.1.0
## ── Conflicts ───────────────────────────────────────── tidymodels_conflicts() ──
## ✖ purrr::discard() masks scales::discard()
## ✖ dplyr::filter()  masks stats::filter()
## ✖ dplyr::lag()     masks stats::lag()
## ✖ recipes::step()  masks stats::step()
## • Search for functions across packages at https://www.tidymodels.org/find/
library("themis")
library("knitr")
library("ranger")
library("doParallel")
## Loading required package: foreach
## 
## Attaching package: 'foreach'
## The following objects are masked from 'package:purrr':
## 
##     accumulate, when
## Loading required package: iterators
## Loading required package: parallel
library("vip")
## 
## Attaching package: 'vip'
## The following object is masked from 'package:utils':
## 
##     vi
library("stargazer")
## 
## Please cite as:
##  Hlavac, Marek (2022). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##  R package version 5.2.3. https://CRAN.R-project.org/package=stargazer
library("GGally")
## Registered S3 method overwritten by 'GGally':
##   method from   
##   +.gg   ggplot2
library("skimr")
library("corrplot")
## corrplot 0.92 loaded
library("ggridges")

library("forcats")

SKIM

Important notes: - 26 variables - 24035 datapoints - type - char 4 - factor 5 - numeric 17 - no missing values

bookings_train |> skim()
Data summary
Name bookings_train
Number of rows 24035
Number of columns 26
_______________________
Column type frequency:
character 4
factor 5
numeric 17
________________________
Group variables None

Variable type: character

skim_variable n_missing complete_rate min max empty n_unique whitespace
arrival_date_month 0 1 3 9 0 12 0
country 0 1 2 4 0 115 0
reserved_room_type 0 1 1 1 0 10 0
assigned_room_type 0 1 1 1 0 10 0

Variable type: factor

skim_variable n_missing complete_rate ordered n_unique top_counts
is_cancelled 0 1 FALSE 2 no: 17362, yes: 6673
meal 0 1 FALSE 5 BB: 18062, HB: 4771, Und: 703, FB: 449
market_segment 0 1 FALSE 5 Onl: 10688, Off: 4487, Dir: 3888, Gro: 3479
deposit_type 0 1 FALSE 3 No : 22946, Non: 1014, Ref: 75
customer_type 0 1 FALSE 4 Tra: 18151, Tra: 4662, Con: 1043, Gro: 179

Variable type: numeric

skim_variable n_missing complete_rate mean sd p0 p25 p50 p75 p100 hist
lead_time 0 1 92.74 97.60 0.00 10 57 155.00 737 ▇▂▁▁▁
arrival_date_year 0 1 2016.12 0.72 2015.00 2016 2016 2017.00 2017 ▃▁▇▁▆
arrival_date_week_number 0 1 27.12 13.97 1.00 16 28 38.00 53 ▆▇▇▇▆
arrival_date_day_of_month 0 1 15.79 8.89 1.00 8 16 24.00 31 ▇▇▇▆▆
stays_in_weekend_nights 0 1 1.19 1.15 0.00 0 1 2.00 16 ▇▁▁▁▁
stays_in_week_nights 0 1 3.13 2.48 0.00 1 3 5.00 40 ▇▁▁▁▁
adults 0 1 1.87 0.75 0.00 2 2 2.00 55 ▇▁▁▁▁
children 0 1 0.13 0.44 0.00 0 0 0.00 3 ▇▁▁▁▁
babies 0 1 0.01 0.12 0.00 0 0 0.00 2 ▇▁▁▁▁
is_repeated_guest 0 1 0.04 0.21 0.00 0 0 0.00 1 ▇▁▁▁▁
previous_cancellations 0 1 0.10 1.36 0.00 0 0 0.00 26 ▇▁▁▁▁
previous_bookings_not_cancelled 0 1 0.15 1.00 0.00 0 0 0.00 30 ▇▁▁▁▁
booking_changes 0 1 0.28 0.71 0.00 0 0 0.00 16 ▇▁▁▁▁
days_in_waiting_list 0 1 0.52 7.37 0.00 0 0 0.00 185 ▇▁▁▁▁
adr 0 1 94.58 61.17 -6.38 50 75 124.21 450 ▇▅▂▁▁
required_car_parking_spaces 0 1 0.14 0.35 0.00 0 0 0.00 3 ▇▁▁▁▁
total_of_special_requests 0 1 0.62 0.81 0.00 0 0 1.00 5 ▇▁▁▁▁
# Summary stats

stargazer(as.data.frame(bookings_train), type='text')
## 
## ========================================================================
## Statistic                         N      Mean    St. Dev.  Min     Max  
## ------------------------------------------------------------------------
## lead_time                       24,035  92.740    97.601    0      737  
## arrival_date_year               24,035 2,016.123  0.720   2,015   2,017 
## arrival_date_week_number        24,035  27.117    13.968    1      53   
## arrival_date_day_of_month       24,035  15.790    8.895     1      31   
## stays_in_weekend_nights         24,035   1.195    1.149     0      16   
## stays_in_week_nights            24,035   3.132    2.479     0      40   
## adults                          24,035   1.868    0.754     0      55   
## children                        24,035   0.129    0.442     0       3   
## babies                          24,035   0.014    0.120     0       2   
## is_repeated_guest               24,035   0.045    0.206     0       1   
## previous_cancellations          24,035   0.104    1.357     0      26   
## previous_bookings_not_cancelled 24,035   0.148    0.999     0      30   
## booking_changes                 24,035   0.284    0.707     0      16   
## days_in_waiting_list            24,035   0.524    7.370     0      185  
## adr                             24,035  94.575    61.169  -6.380 450.000
## required_car_parking_spaces     24,035   0.138    0.347     0       3   
## total_of_special_requests       24,035   0.618    0.813     0       5   
## ------------------------------------------------------------------------
# Pairplots

# Subset (only looked good with these vars)
bookings_train_pairplot1 = subset(bookings_train, select = c(is_cancelled, adr, lead_time) )

# pairplot'
options(repr.plot.width = 12, repr.plot.height =16)
ggpairs(bookings_train_pairplot1, binwidth=50)
## Warning in warn_if_args_exist(list(...)): Extra arguments: 'binwidth' are being
## ignored. If these are meant to be aesthetics, submit them using the 'mapping'
## variable within ggpairs with ggplot2::aes or ggplot2::aes_string.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

is_cancelled

We have 6673 cancellations within the whole dataset and 17362 non-cancellations.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = is_cancelled))

# Unique vals + count
table(bookings_train$is_cancelled)
## 
##   yes    no 
##  6673 17362

arrival_date_year

Most data is from 2016, then 2017, and then 2015. The order of most to least cancellations is the same. Proportionally, 2017 has the most cancellations, then 2016 and then 2015.

# bookings_train["arrival_date_year"]

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = arrival_date_year))

# Visualisation of cancelled per year
ggplot(bookings_train, 
       aes(x = arrival_date_year, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per year (conditional probability)
df_arrival_date_year_prob <- bookings_train %>% 
  group_by(is_cancelled, arrival_date_year) %>% 
  summarize(n = n()) %>% 
  group_by(arrival_date_year) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_arrival_date_year_prob, aes(x = arrival_date_year, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing vlaues
sum(is.na(bookings_train$arrival_date_year))
## [1] 0
# Bizarre values
unique(bookings_train$arrival_date_year)
## [1] 2016 2017 2015
# Unique vals + count
table(bookings_train$arrival_date_year)
## 
##  2015  2016  2017 
##  4934 11201  7900

arrival_date_month

We can observe that around the summer months, there are more bookings, and also the most cancellations. Winter months are more quiet and thus less cancellations due to less bookings. Relatively, proportionally, the summer months july august and september have the most cancellations.

#bookings_train["arrival_date_month"]

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = arrival_date_month))

# Visualisation of cancelled per month
ggplot(bookings_train, 
       aes(x = arrival_date_month, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per month (conditional probability)
df_arrival_date_month_prob <- bookings_train %>% 
  group_by(is_cancelled, arrival_date_month) %>% 
  summarize(n = n()) %>% 
  group_by(arrival_date_month) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_arrival_date_month_prob, aes(x = arrival_date_month, y = prob, fill = is_cancelled)) + 
  geom_col() +
  scale_x_discrete(limits = c("January","February","March","April","May","June","July","August","September","October","November","December"))

# Check missing vlaues
sum(is.na(bookings_train$arrival_date_month))
## [1] 0
# Bizarre values
sort(unique(bookings_train$arrival_date_month))
##  [1] "April"     "August"    "December"  "February"  "January"   "July"     
##  [7] "June"      "March"     "May"       "November"  "October"   "September"
# Unique vals + count
table(bookings_train$arrival_date_month)
## 
##     April    August  December  February   January      July      June     March 
##      2196      2930      1570      1853      1295      2718      1856      2007 
##       May  November   October September 
##      2155      1460      2129      1866

arrival_date_day_of_month

There seems to be no pattern what concerns the dat of cancellation. Logically, day 31 has the least bookings as many months don’t have a 31st day. Day 30 has the most, which is something that cannot be explained by the information given from the assignment.

# bookings_train["arrival_date_day_of_month"]

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = arrival_date_day_of_month))

# Visualisation of cancelled per day of month
ggplot(bookings_train, 
       aes(x = arrival_date_day_of_month, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per day of month (conditional probability)
df_arrival_date_day_of_month <- bookings_train %>% 
  group_by(is_cancelled, arrival_date_day_of_month) %>% 
  summarize(n = n()) %>% 
  group_by(arrival_date_day_of_month) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_arrival_date_day_of_month, aes(x = arrival_date_day_of_month, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing vlaues
sum(is.na(bookings_train$arrival_date_day_of_month))
## [1] 0
# Bizarre values
sort(unique(bookings_train$arrival_date_day_of_month))
##  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
## [26] 26 27 28 29 30 31
# Unique vals + count
table(bookings_train$arrival_date_day_of_month)
## 
##   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20 
## 769 884 814 764 854 731 727 722 850 724 781 932 662 750 781 859 822 841 772 746 
##  21  22  23  24  25  26  27  28  29  30  31 
## 706 732 697 815 819 835 748 783 745 872 498

arrival_date_week_number

We observe a big spike around the weeks where summer is. Around the beginning and end of the graph you observe the winter months which have less bookings, likely due to many people not being interested in a seaside hotel during the cold winter.

# bookings_train["arrival_date_week_number"]

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = arrival_date_week_number))

# Visualisation of cancelled per arrival_date_week_number
ggplot(bookings_train, 
       aes(x = arrival_date_week_number, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per arrival_date_week_number (conditional probability)
df_arrival_date_week_number <- bookings_train %>% 
  group_by(is_cancelled, arrival_date_week_number) %>% 
  summarize(n = n()) %>% 
  group_by(arrival_date_week_number) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_arrival_date_week_number, aes(x = arrival_date_week_number, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$arrival_date_week_number))
## [1] 0
# Bizarre values
sort(unique(bookings_train$arrival_date_week_number))
##  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
## [26] 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
## [51] 51 52 53
# Unique vals + count
table(bookings_train$arrival_date_week_number)
## 
##   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20 
## 210 276 307 304 291 412 537 444 477 436 401 410 488 431 559 446 516 610 463 470 
##  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40 
## 539 545 441 409 433 439 490 583 631 646 635 623 698 668 571 458 396 456 445 410 
##  41  42  43  44  45  46  47  48  49  50  51  52  53 
## 515 441 555 420 409 319 404 300 428 270 259 348 363

##meal Meal seems to show some interesting thinbgs. For instance, we have Undefined and None’s, which along with FB don’t make up a big portion of the data. However, there are more cancellations than not for FB. And for None’s most of the bookings have not cancelled. It could be due to people cancelling FB due to the more premium price it may have, or people are interested in going to other restaurants etc.

# Visualisation of cancelled per meal
ggplot(bookings_train, 
       aes(x = meal, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per meal (conditional probability)
df_meal <- bookings_train %>% 
  group_by(is_cancelled, meal) %>% 
  summarize(n = n()) %>% 
  group_by(meal) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_meal, aes(x = meal, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$meal))
## [1] 0
# Bizarre values
sort(unique(bookings_train$meal))
## [1] BB        HB        Undefined FB        None     
## Levels: BB HB Undefined FB None
# Unique vals + count
table(bookings_train$meal)
## 
##        BB        HB Undefined        FB      None 
##     18062      4771       703       449        50

lead_time

Interestingly, we can observe that cancellations have a higher lead time than the bookings that were not cancelled. Although the non-cancellations have quite a few outliers. This could be due to there simply being more non-cancelled bookings. Anyhow, the graph seems to indicate that a longer lead time means higher chance of cancellations.

boxplot(bookings_train$lead_time~bookings_train$is_cancelled, 
        xlab="is_cancelled", ylab="Lead Time", 
        col=topo.colors(3))
   
legend("bottomleft", inset=.02, title="Cancelled",
   c("Yes","No"), fill=topo.colors(3), horiz=TRUE, cex=0.8)

# Minmax
summary(bookings_train$lead_time)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    0.00   10.00   57.00   92.74  155.00  737.00

stays_in_weekend_nights

There is not a clear pattern when it comes to the amount of stays in the weekend nights.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = stays_in_weekend_nights))

# Visualisation of cancelled per stays_in_weekend_nights
ggplot(bookings_train, 
       aes(x = stays_in_weekend_nights, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per stays_in_weekend_nights (conditional probability)
df_stays_in_weekend_nights <- bookings_train %>% 
  group_by(is_cancelled, stays_in_weekend_nights) %>% 
  summarize(n = n()) %>% 
  group_by(stays_in_weekend_nights) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_stays_in_weekend_nights, aes(x = stays_in_weekend_nights, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$stays_in_weekend_nights))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$stays_in_weekend_nights))
##  [1]  0  1  2  3  4  5  6  7  8  9 10 12 13 16
# Unique vals + count
table(bookings_train$stays_in_weekend_nights)
## 
##    0    1    2    3    4    5    6    7    8    9   10   12   13   16 
## 8433 5597 8361  565  938   21   73    9   26    3    3    3    1    2

stays_in_week_nights

As well as for the stays in week nights, there seems to be little pattern.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = stays_in_week_nights))

# Visualisation of cancelled per stays_in_week_nights
ggplot(bookings_train, 
       aes(x = stays_in_week_nights, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per stays_in_week_nights (conditional probability)
df_stays_in_week_nights <- bookings_train %>% 
  group_by(is_cancelled, stays_in_week_nights) %>% 
  summarize(n = n()) %>% 
  group_by(stays_in_week_nights) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_stays_in_week_nights, aes(x = stays_in_week_nights, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$stays_in_week_nights))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$stays_in_week_nights))
##  [1]  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 19 20 21 22 24 25 30 32
## [26] 40
# Unique vals + count
table(bookings_train$stays_in_week_nights)
## 
##    0    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15 
## 1660 5478 4375 3554 2048 4648  687  468  299   98  552   18   13   10   13   47 
##   16   19   20   21   22   24   25   30   32   40 
##    5   25   21    5    1    1    3    3    1    2

adults

As for the amount of adults in a booking, it seems as though the more adults, the higher the chance of cancellation. As soon as more than 3 adults book a hotel, the ratio of cancelled and not cancelled is completely red, thus indicating lots of cancellations.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = adults))

# Visualisation of cancelled per adults
ggplot(bookings_train, 
       aes(x = adults, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per adults (conditional probability)
df_adults <- bookings_train %>% 
  group_by(is_cancelled, adults) %>% 
  summarize(n = n()) %>% 
  group_by(adults) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_adults, aes(x = adults, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$adults))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$adults))
##  [1]  0  1  2  3  4  5  6 10 20 26 27 50 55
# Unique vals + count
table(bookings_train$adults)
## 
##     0     1     2     3     4     5     6    10    20    26    27    50    55 
##     9  4330 18803   864    17     1     1     1     2     4     1     1     1

children

We can observe that most bookings do not include children. If children are included, it is mostly one or two and very little include 3 children. We can observe that the more children, the more cancellations, although for 3 children the ratio is in favor completely towards no cancellation.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = children))

# Visualisation of cancelled per children
ggplot(bookings_train, 
       aes(x = children, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per children (conditional probability)
df_children <- bookings_train %>% 
  group_by(is_cancelled, children) %>% 
  summarize(n = n()) %>% 
  group_by(children) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_children, aes(x = children, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$children))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$children))
## [1] 0 1 2 3
# Unique vals + count
table(bookings_train$children)
## 
##     0     1     2     3 
## 21937  1109   984     5

babies

Although there is an enormous data imbalance, thus we cannot make an accurate conclusion, it seems as if the more babies, the less cancellations. However, most data has 0 babies.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = babies))

# Visualisation of cancelled per babies
ggplot(bookings_train, 
       aes(x = babies, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per babies (conditional probability)
df_babies <- bookings_train %>% 
  group_by(is_cancelled, babies) %>% 
  summarize(n = n()) %>% 
  group_by(babies) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_babies, aes(x = babies, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$babies))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$babies))
## [1] 0 1 2
# Unique vals + count
table(bookings_train$babies)
## 
##     0     1     2 
## 23699   331     5

country

We can observe that most data comes from portugese and british people, after that spanish and irish. Furthermore, we also have a low of 1’s from different countries.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = country))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = country, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Check missing values
sum(is.na(bookings_train$country))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$country))
##   [1] "AGO"  "ALB"  "AND"  "ARE"  "ARG"  "ARM"  "AUS"  "AUT"  "AZE"  "BEL" 
##  [11] "BGR"  "BHS"  "BIH"  "BLR"  "BRA"  "CAF"  "CHE"  "CHL"  "CHN"  "CIV" 
##  [21] "CMR"  "CN"   "COL"  "CPV"  "CRI"  "CUB"  "CYM"  "CYP"  "CZE"  "DEU" 
##  [31] "DJI"  "DNK"  "DOM"  "DZA"  "ECU"  "EGY"  "ESP"  "EST"  "FIN"  "FJI" 
##  [41] "FRA"  "GBR"  "GEO"  "GGY"  "GIB"  "GRC"  "HKG"  "HRV"  "HUN"  "IDN" 
##  [51] "IND"  "IRL"  "IRN"  "ISL"  "ISR"  "ITA"  "JAM"  "JEY"  "JOR"  "JPN" 
##  [61] "KAZ"  "KOR"  "KWT"  "LBN"  "LKA"  "LTU"  "LUX"  "LVA"  "MAC"  "MAR" 
##  [71] "MDG"  "MDV"  "MEX"  "MLT"  "MOZ"  "MUS"  "MYS"  "NGA"  "NLD"  "NOR" 
##  [81] "NPL"  "NULL" "NZL"  "OMN"  "PAK"  "PER"  "PHL"  "POL"  "PRI"  "PRT" 
##  [91] "QAT"  "ROU"  "RUS"  "SAU"  "SEN"  "SGP"  "SRB"  "SUR"  "SVK"  "SVN" 
## [101] "SWE"  "SYC"  "TGO"  "THA"  "TUN"  "TUR"  "TWN"  "UGA"  "UKR"  "URY" 
## [111] "USA"  "VEN"  "VNM"  "ZAF"  "ZWE"
# Unique vals + count: SORTED
sort(table(bookings_train$country))
## 
##   BGR   BHS   BIH   CRI   CYM   DJI   EGY   FJI   GGY   IDN   JAM   JOR   LKA 
##     1     1     1     1     1     1     1     1     1     1     1     1     1 
##   MAC   MDG   MLT   MUS   NPL   PER   QAT   SAU   SEN   SYC   TGO   THA   TUN 
##     1     1     1     1     1     1     1     1     1     1     1     1     1 
##   UGA   VNM   ZWE   ARM   AZE   CIV   CMR   CUB   DOM   ECU   ISL   JEY   KWT 
##     1     1     1     2     2     2     2     2     2     2     2     2     2 
##   ALB   CAF   HKG   KAZ   MEX   PAK   SGP   SUR   VEN   AND   ARE   DZA   IRN 
##     3     3     3     3     3     3     3     3     3     4     4     4     4 
##   MDV   MOZ   SRB   SVN   BLR   CPV   LBN   CYP   GRC   JPN   KOR   PRI   TWN 
##     4     4     4     4     5     5     5     6     6     6     6     6     6 
##   URY   GEO   HRV   MYS   NGA   NZL   COL   GIB   SVK   OMN   PHL   TUR   CZE 
##     6     7     7     7     7     7     8     8     8    10    10    12    13 
##   CHL   AGO   EST   ISR   ZAF   UKR   IND   LVA   DNK   LTU   HUN   MAR   ARG 
##    14    15    15    15    15    16    17    18    27    28    35    38    41 
##   AUS   LUX   NOR   CHN   FIN   ROU   AUT   RUS   SWE   POL   BRA   CHE  NULL 
##    48    49    68    83    86   108   113   120   179   196   252   266   271 
##   BEL   ITA   USA   NLD    CN   DEU   FRA   IRL   ESP   GBR   PRT 
##   294   294   297   328   413   738   946  1298  2361  4077 10587

market_segment

We can observe that most of the data belongs in the category Online TA, then offline TA/TO, Direct and then Other. Furthermore, we can observe that Direct, Offline TA/TO and Others mostly do not have cancellations, whereas Groups and Online TA have more cancellations.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = market_segment))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = market_segment, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per market_segment (conditional probability)
df_market_segment <- bookings_train %>% 
  group_by(is_cancelled, market_segment) %>% 
  summarize(n = n()) %>% 
  group_by(market_segment) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_market_segment, aes(x = market_segment, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$market_segment))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$market_segment))
## [1] Direct        Groups        Offline TA/TO Online TA     Other        
## Levels: Direct Groups Offline TA/TO Online TA Other
# Unique vals + count
sort(table(bookings_train$market_segment))
## 
##         Other        Groups        Direct Offline TA/TO     Online TA 
##          1493          3479          3888          4487         10688

is_repeated_guest

We can see that most cookings are from first-timers. Howwever, we can also see that the bookings which are a repeated stay, the amount of cancellations in proportionally smaller than for the first-timers.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = is_repeated_guest))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = is_repeated_guest, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per is_repeated_guest (conditional probability)
df_is_repeated_guest <- bookings_train %>% 
  group_by(is_cancelled, is_repeated_guest) %>% 
  summarize(n = n()) %>% 
  group_by(is_repeated_guest) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_is_repeated_guest, aes(x = is_repeated_guest, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$is_repeated_guest))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$is_repeated_guest))
## [1] 0 1
# Unique vals + count
sort(table(bookings_train$is_repeated_guest))
## 
##     1     0 
##  1070 22965

previous_cancellations

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = previous_cancellations))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = previous_cancellations, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per previous_cancellations (conditional probability)
df_previous_cancellations <- bookings_train %>% 
  group_by(is_cancelled, previous_cancellations) %>% 
  summarize(n = n()) %>% 
  group_by(previous_cancellations) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_previous_cancellations, aes(x = previous_cancellations, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$previous_cancellations))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$previous_cancellations))
##  [1]  0  1  2  3  4  5 14 19 24 25 26
# Unique vals + count
table(bookings_train$previous_cancellations)
## 
##     0     1     2     3     4     5    14    19    24    25    26 
## 23374   545    20     9     3     1    11    11    28    16    17

previous_bookings_not_cancelled’

In this graph, we can observe a clear pattern in which, the more bookings people have had in which they did not cancel, the higher the chance that they will not cancel their current booking.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = previous_bookings_not_cancelled))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = previous_bookings_not_cancelled, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per previous_bookings_not_cancelled (conditional probability)
df_previous_bookings_not_cancelled <- bookings_train %>% 
  group_by(is_cancelled, previous_bookings_not_cancelled) %>% 
  summarize(n = n()) %>% 
  group_by(previous_bookings_not_cancelled) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_previous_bookings_not_cancelled, aes(x = previous_bookings_not_cancelled, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$previous_bookings_not_cancelled))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$previous_bookings_not_cancelled))
##  [1]  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 25 26
## [26] 27 28 30
# Unique vals + count
sort(table(bookings_train$previous_bookings_not_cancelled))
## 
##    15    19    25    26    27    28    30    17    20    21    22    16    14 
##     1     1     1     1     1     1     1     2     2     2     2     3     4 
##    18    12    13    11     9    10     8     7     6     5     4     3     2 
##     4     5     5     9    13    13    18    25    41    57    77   123   239 
##     1     0 
##   572 22812

reserved_room_type

In this case we see some interesting patterns, most of the reserved rooms are A, then D and then E. We do not have many bookings for P and B but all P’s bookings have been cancelled and none of B’s. However due to the data imbalance, this is a conclusion we cannot make as we lack a proper sample.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = reserved_room_type))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = reserved_room_type, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per reserved_room_type (conditional probability)
df_reserved_room_type <- bookings_train %>% 
  group_by(is_cancelled, reserved_room_type) %>% 
  summarize(n = n()) %>% 
  group_by(reserved_room_type) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_reserved_room_type, aes(x = reserved_room_type, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$reserved_room_type))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$reserved_room_type))
##  [1] "A" "B" "C" "D" "E" "F" "G" "H" "L" "P"
# Unique vals + count
sort(table(bookings_train$reserved_room_type))
## 
##     P     B     L     H     C     F     G     E     D     A 
##     2     3     4   351   565   625   971  2982  4464 14068

assigned_room_type

Once again, here we have a big data imbalance, and therefore cannot make confident conclusions about certain room types. However, interestingly we see that, here, for B we mainly have more bookings not cancelled proportionally, and P only has cancellations when assigned.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = assigned_room_type))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = assigned_room_type, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per assigned_room_type (conditional probability)
df_assigned_room_type <- bookings_train %>% 
  group_by(is_cancelled, assigned_room_type) %>% 
  summarize(n = n()) %>% 
  group_by(assigned_room_type) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_assigned_room_type, aes(x = assigned_room_type, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$assigned_room_type))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$assigned_room_type))
##  [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "P"
# Unique vals + count
sort(table(bookings_train$assigned_room_type))
## 
##     P     B     I     H     F     G     C     E     D     A 
##     2   100   228   414  1002  1111  1353  3393  6216 10216

booking_changes

It seems here as though the more bookig changes, the less cancellations. However, it should be remembered that there is data imbalance and most of the data consists of 0 booking changes or perhaps 1.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = booking_changes))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = booking_changes, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per booking_changes (conditional probability)
df_booking_changes <- bookings_train %>% 
  group_by(is_cancelled, booking_changes) %>% 
  summarize(n = n()) %>% 
  group_by(booking_changes) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_booking_changes, aes(x = booking_changes, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$booking_changes))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$booking_changes))
##  [1]  0  1  2  3  4  5  6  7  8  9 10 13 16
# Unique vals + count
sort(table(bookings_train$booking_changes))
## 
##    10    13    16     9     7     8     6     5     4     3     2     1     0 
##     1     1     1     2     3     3    17    45   104   276   938  3280 19364

deposit_type

As for the deposit type, we mostly have data on the no deposit type. Furthermore we have non refund and refundable. The non refundable category seems to have a large amount of cancellations proportionally wise.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = deposit_type))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = deposit_type, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per deposit_type (conditional probability)
df_deposit_type <- bookings_train %>% 
  group_by(is_cancelled, deposit_type) %>% 
  summarize(n = n()) %>% 
  group_by(deposit_type) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_deposit_type, aes(x = deposit_type, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$deposit_type))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$deposit_type))
## [1] No Deposit Non Refund Refundable
## Levels: No Deposit Non Refund Refundable
# Unique vals + count
sort(table(bookings_train$deposit_type))
## 
## Refundable Non Refund No Deposit 
##         75       1014      22946

days_in_waiting_list

There seems to be no clear pattern in this case, but it can be that the more days waitlisted, the less cancellations there are. However, the sample of the data is not reporesentative for all days. Mostly, the days are 0.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = days_in_waiting_list))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = days_in_waiting_list, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per days_in_waiting_list (conditional probability)
df_days_in_waiting_list <- bookings_train %>% 
  group_by(is_cancelled, days_in_waiting_list) %>% 
  summarize(n = n()) %>% 
  group_by(days_in_waiting_list) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_days_in_waiting_list, aes(x = days_in_waiting_list, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$days_in_waiting_list))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$days_in_waiting_list))
##  [1]   0   1   2   4   5   6   8  11  13  14  18  22  34  43  44  47  50  60  61
## [20]  64  65  75  83  93  97  99 100 101 107 109 113 116 121 122 125 142 150 154
## [39] 185
# Unique vals + count
sort(table(bookings_train$days_in_waiting_list))
## 
##     2    11    13    18    22    34    43    44    83    93    99   109   116 
##     1     1     1     1     1     1     1     1     1     1     1     1     1 
##   142   154   185     5     6    50    60    64    97   100   107   121     4 
##     1     1     1     2     2     2     2     2     2     2     2     2     3 
##     8    61     1    14   113   150   125    75   101    47    65   122     0 
##     3     3     4     4     4     7     8    12    13    16    16    28 23880

customer_type

Most customers are apaprently transient, transient-party, contract, group. Transient seems to have the most cancellations and the least cancellations fall under the category of contract.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = customer_type))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = customer_type, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per customer_type (conditional probability)
df_customer_type <- bookings_train %>% 
  group_by(is_cancelled, customer_type) %>% 
  summarize(n = n()) %>% 
  group_by(customer_type) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_customer_type, aes(x = customer_type, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$customer_type))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$customer_type))
## [1] Transient       Transient-Party Contract        Group          
## Levels: Transient Transient-Party Contract Group
# Unique vals + count
sort(table(bookings_train$customer_type))
## 
##           Group        Contract Transient-Party       Transient 
##             179            1043            4662           18151

adr

Interestingly, we can observe that the distribution of ADR for cancelled is higher and more disperse than the one of no cancellation. It would indicate that higher values of ADR means higher chance of cancellation.

boxplot(bookings_train$adr~bookings_train$is_cancelled, 
        xlab="is_cancelled", ylab="ADR", 
        col=topo.colors(3))
   
legend("bottomleft", inset=.02, title="Cancellation",
   c("Yes","No"), fill=topo.colors(3), horiz=TRUE, cex=0.8)

# Minmax
summary(bookings_train$adr)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   -6.38   50.00   75.00   94.58  124.21  450.00
table(bookings_train$adr)
## 
##  -6.38      0    1.8      2    2.4      3      4    4.5   5.25      6      7 
##      1    468      1      1      1      1     15      2      2      7      2 
##      8   8.43   9.14     10   10.5   10.8  11.53  11.75     12   12.5     13 
##     62      1      1      2      1      2      1      1      4      1      2 
##     14   17.5     19  19.35     20     21  21.37   21.5  22.11   22.4   22.5 
##      3      1      2      1      1      3      1      1      1      1     10 
##     23   23.7  23.93   24.5   24.7  24.79   24.8  24.95     25  25.11  25.42 
##      1      3      2      1      1      1      2      2     94      3      1 
##   25.5  25.64  25.65  25.92     26   26.1  26.26   26.5  26.64  26.93  26.99 
##      2      1      1      2     46     31      1      2      3      1      1 
##     27  27.07  27.35  27.43   27.5  27.53  27.54  27.56   27.6  27.81   27.9 
##     43      1      1      1      4      1      1      1      1      1      4 
##     28   28.1  28.33   28.5  28.64  28.71  28.79   28.8     29  29.11  29.16 
##      5      8      1      4      3      1      1      3    139      4      9 
##   29.3   29.6  29.73  29.75  29.78  29.96  29.97     30  30.03  30.24   30.4 
##      1      1      1      1      1      1      1    197      1     21      1 
##  30.43   30.5   30.6  30.67  30.71   30.8  30.96  30.99     31  31.18   31.2 
##      1      6     16      1      1      4      2      1     14      1      3 
##  31.41  31.45   31.5  31.59  31.63  31.64  31.65  31.67   31.8     32   32.1 
##      1     12      2      1      1      1      1      1      1     51      1 
##  32.23  32.24   32.3  32.31  32.34   32.4   32.5   32.6  32.62  32.77   32.8 
##      1      2      2      1      1     23      2      2      1      1      2 
##     33  33.05  33.08  33.11  33.26  33.27   33.3  33.31   33.6  33.65  33.71 
##     11      1      1      2     10      1     41      1      3      1      1 
##  33.84     34  34.11   34.2  34.33   34.4  34.43   34.5  34.51  34.56  34.57 
##      1    122      1      8      1     28      2      1      1      7      1 
##  34.65  34.73  34.79   34.8  34.82  34.85  34.86     35   35.1  35.11  35.12 
##      2      2      1      1      1      2      1    252     14     19      3 
##  35.15  35.24  35.25  35.33   35.4  35.45  35.46   35.6  35.63  35.64   35.7 
##      3      1      1      2      1      1      1      2      1      1      1 
##  35.95  35.99     36  36.04  36.05   36.1  36.12  36.13  36.14   36.2  36.24 
##      1      1    175      2     21      2      3      4      1      3      2 
##  36.25  36.29  36.32   36.4  36.43  36.45   36.5  36.53  36.55  36.61  36.72 
##      4      1      1      3      1      8      2      1      2      2      1 
##   36.8  36.84  36.86   36.9  36.96     37  37.01  37.05   37.1  37.14   37.2 
##      1      1      4      2     15     82      1      1      1      1      1 
##  37.29  37.31   37.4  37.43  37.44  37.45   37.5  37.53  37.54  37.56   37.6 
##      1      2     19      3      3      1      2      1      3      4      4 
##  37.67   37.7  37.71  37.73   37.8  37.83  37.86  37.94     38  38.03  38.04 
##      1      4      1      2    144      2      1      1    140      1      1 
##  38.07   38.1  38.11  38.12  38.13  38.25  38.32   38.4   38.5  38.55  38.57 
##      4      1      2      1      1      2      2     23      7      2      1 
##  38.62  38.68   38.7  38.77  38.81  38.83  38.86  38.88  38.92     39  39.04 
##      1      1      4      1      3      2      1      1      1    170      1 
##  39.06   39.1  39.13  39.15   39.2  39.27   39.3  39.33   39.4  39.41   39.5 
##      1      2      2      5      1      1      4      7      7      1      3 
##   39.6  39.68  39.74  39.76  39.79   39.8  39.83  39.84  39.93  39.95  39.96 
##     10      2      1      1      1      8      2      1      1      2      1 
##  39.99     40  40.03  40.05  40.07  40.11  40.14  40.24  40.25  40.29  40.32 
##      1    237      1     29      1      1      3      1      1      1      5 
##  40.39   40.4   40.5  40.65  40.68   40.7  40.76   40.8  40.81  40.85  40.93 
##      1      3     29      1      3      2      2      6      3      2      1 
##  40.95  40.96     41  41.04  41.09  41.11  41.18   41.2  41.33  41.37   41.4 
##     22      1     12      1      1      3      1      1      3      1     49 
##  41.47   41.5  41.51  41.53  41.57  41.58   41.6  41.65  41.75  41.76  41.85 
##      1      1      1      2      3      6      9      2      1      4      2 
##  41.87  41.89  41.94  41.96  41.97  41.98     42  42.08   42.1  42.11  42.12 
##      1      1      1      1      1      9    210      1      1      2      2 
##  42.14  42.23  42.24  42.25  42.28   42.3  42.35  42.38   42.4  42.43   42.5 
##      1      1      1      1      1     11      2      1      1      9     18 
##  42.51  42.56  42.57   42.6  42.65  42.69   42.7  42.75  42.81  42.83   42.9 
##      1      1      1      2      2      4      1      2      2      1      1 
##  42.95  42.97     43  43.03  43.08  43.11  43.12  43.16  43.19   43.2  43.26 
##     12      5    206      1      1      1      2      1      1     41      1 
##   43.3  43.33  43.38   43.4  43.41  43.43   43.5  43.65  43.66  43.67   43.7 
##      3      2      1      8      4      1      3      1      1      1      1 
##  43.71  43.73  43.75  43.76  43.78   43.8  43.88  43.89  43.92  43.93  43.96 
##      1      1      1      1      1      5      1      4      1      5      1 
##  43.97     44  44.04  44.07   44.1  44.14  44.28   44.3  44.33  44.36  44.38 
##      1     92      1      1      8      1      1      1      1      4      1 
##   44.4  44.43  44.45  44.46  44.49   44.5  44.56  44.64  44.66  44.67   44.7 
##      2      1      1      1      1     57      1      9      7      1      1 
##  44.71   44.8  44.81  44.87  44.88  44.99     45  45.05   45.1   45.2  45.33 
##      1     23      2      1      2      1    211      1      1      2      1 
##  45.35  45.36  45.37  45.45   45.5  45.55   45.6  45.64  45.65  45.66  45.72 
##      1      4      1      1      9      1      6      1      1      1      1 
##  45.77   45.8  45.89   45.9     46  46.07   46.1  46.16  46.17  46.18   46.2 
##      1      1      1      8    160      1      2      1      2      2      2 
##  46.33  46.36   46.4  46.43   46.5  46.57  46.64  46.66  46.69   46.7  46.75 
##      1      6     37      2     14      1      3      1      1      1     15 
##  46.76   46.8  46.83  46.88  46.93  46.96  46.98     47  47.07  47.12  47.14 
##      1     30      1      1      1      2     13     98      1      1      1 
##   47.2  47.23  47.25  47.33   47.4  47.46   47.5  47.53  47.54  47.55  47.57 
##      1      1      2      2      4      1      5      1      3      1      1 
##   47.6   47.7  47.72  47.74  47.76  47.79   47.8  47.83  47.85  47.86   47.9 
##      3      2      1      1      1      1      6      1      1      1      5 
##  47.97  47.98     48  48.06  48.08  48.12  48.18  48.19   48.2  48.25  48.27 
##      1      1    621      1      2      1      1      2      2      1      1 
##   48.3  48.32  48.38   48.4  48.43   48.5  48.54  48.57   48.6  48.61   48.7 
##      1      1      1      4      3      6      1      1     10      1      3 
##  48.71  48.75   48.8  48.86  48.88   48.9  48.95  48.96  48.98     49  49.01 
##      2     13      9      1      4      2      1      1      1     93      2 
##   49.1  49.16  49.17  49.18   49.2  49.22  49.25   49.3   49.4   49.5  49.51 
##      1      2      2      1      6      1      1      4     10     12      1 
##  49.59   49.6  49.67   49.7  49.71  49.74  49.75   49.8   49.9  49.92  49.94 
##      2      3      1      2      1      4      2      2      3      1      1 
##  49.95     50  50.02  50.03  50.05  50.06   50.1  50.15  50.17  50.19   50.2 
##     26    205      1      2      1      2      2      7      1      1      3 
##  50.22  50.24  50.33  50.36   50.4  50.43   50.5  50.54  50.55  50.57  50.59 
##      2      1      3      1     31      1      6      1      1      1      1 
##   50.6  50.63   50.8  50.83  50.85  50.86  50.88  50.91  50.93  50.95  50.96 
##      2      1      2      1     15      1      2      1      2      1      1 
##  50.97  50.98     51  51.02  51.04  51.09  51.12  51.13   51.2  51.22  51.25 
##      1      1     48      1      2      1      1      2      2      3      2 
##  51.27  51.29   51.3  51.36  51.37   51.4  51.43  51.47   51.5  51.59   51.6 
##      1      1      4      1      3      2      1      1      4      1      1 
##  51.67   51.7  51.71  51.75  51.76   51.8  51.84  51.85  51.87  51.89   51.9 
##      1      1      2      3      2      7      8     10      1      1      1 
##  51.94  51.95  51.97     52  52.14  52.18   52.2  52.23  52.25  52.27  52.33 
##      1      1      1     80      1      1     69      1      2      2      2 
##  52.35  52.36   52.4  52.43  52.46   52.5  52.51  52.55  52.56  52.58  52.66 
##      1      5     19      1      2      5      1      4     14      1      1 
##  52.67   52.7  52.71  52.73  52.75   52.8  52.85  52.86   52.9  52.97  52.98 
##      1      3      1      1      1     20     21      2      1      1      2 
##     53  53.01  53.06   53.1  53.13  53.14   53.2  53.25  53.33  53.39   53.4 
##     37      1      2      9      1      1      5      2      2      1      3 
##  53.41  53.44  53.46  53.55  53.57   53.6  53.63  53.67  53.71  53.79   53.8 
##      1      1      1      4      2      1      1      3      1      1      1 
##  53.82  53.84  53.85  53.86  53.87   53.9  53.99     54  54.02  54.06   54.2 
##      1      1     16      1      5      1      1    179      1      1      6 
##  54.21   54.4  54.41  54.43  54.47   54.5  54.56   54.6  54.67  54.68   54.7 
##      2     10      1      1      1     71      6      1      4      2      2 
##  54.71  54.72  54.75   54.8  54.84  54.86   54.9  54.97  54.99     55  55.04 
##      5      1      1      2      1      4      8      2     14    264      1 
##  55.06  55.08  55.09   55.1  55.11  55.13  55.14   55.2  55.25  55.28   55.3 
##      1      1      1      7      1      1      1      2      4      1      1 
##  55.32  55.33  55.35  55.39   55.4  55.41  55.43  55.44  55.46  55.48  55.49 
##      1      2      1      1      2      1      8      8      1      1      1 
##   55.5  55.57  55.59   55.6  55.63  55.64  55.65  55.68  55.69  55.73  55.78 
##      4      1      1      2      1      2      1     13      1      1      1 
##  55.79   55.8  55.83  55.87  55.89  55.92     56  56.01  56.05   56.1  56.11 
##      1     71      2      2      1      1    149      1      1      6      1 
##  56.16  56.17   56.2  56.21  56.29  56.33   56.4  56.42  56.45  56.47  56.48 
##      3      1      1      3      1      2      8      1      1      1      1 
##   56.5  56.52  56.57   56.6  56.63  56.67   56.7  56.71  56.72  56.73  56.83 
##      3      2      4      1      1      2     38      1      3      1      1 
##  56.88  56.89   56.9  56.95  56.98     57  57.04  57.06  57.09   57.1  57.11 
##      1      2      1      4      2     43      1      1      1      1      1 
##  57.14  57.15   57.2  57.22  57.23  57.25  57.28  57.29  57.33  57.39   57.4 
##      1      1      1      1      1      2      1      1      2      1      3 
##  57.43  57.44   57.5  57.51  57.53  57.55   57.6  57.61  57.64  57.65  57.67 
##      4      1      7      3      2      2     34      1      2      1      1 
##  57.68   57.7  57.72  57.74  57.75  57.76   57.8  57.83  57.85   57.9  57.92 
##      1      1      1      1      5      1     23      1      1      2      1 
##  57.96  57.97     58  58.04  58.05   58.2  58.22  58.23  58.25  58.32  58.33 
##      3      2    233      1      5     10      1      2      1      1      1 
##   58.4  58.43   58.5  58.52  58.55  58.57   58.6  58.65   58.7  58.75   58.8 
##      9      1     14      2      1      2      8      1     11      1      6 
##   58.9  58.91  58.93  58.95     59  59.03  59.04  59.06  59.07  59.08  59.12 
##      1      1      1     31     67      1      1      1      2      1      1 
##  59.14  59.18   59.2  59.22  59.24  59.28  59.29   59.3  59.31  59.33   59.4 
##      1      2      4      2      1      1      2      3      3      4     31 
##  59.48   59.5  59.56   59.6  59.62  59.66  59.71  59.73  59.75  59.79   59.8 
##      1      3      1      6      1      2      2      1      2      3     13 
##  59.85   59.9  59.91     60  60.06  60.07  60.13  60.18   60.2  60.21  60.25 
##      2      3      2    279      1      1      2      1      2      1      1 
##   60.3  60.35  60.36   60.4  60.43  60.44  60.46  60.48   60.5  60.56  60.61 
##     13      5      2      3      1      1      1      1      4      1      1 
##  60.64   60.7  60.71  60.74   60.8  60.82  60.83  60.92  60.98     61  61.02 
##      1      1      1      1      1      1      2      1      1     50      1 
##  61.19   61.2  61.28  61.33  61.35   61.4   61.5  61.56   61.6  61.64  61.65 
##      2     31      1      2      2      9      9      3     10      1      4 
##  61.67  61.68  61.71  61.75   61.8  61.86  61.87     62  62.04  62.05   62.1 
##      1      1      1      1      5      1      1     92      1      2      4 
##  62.12  62.16  62.17  62.18   62.2  62.25  62.28  62.29   62.3  62.37  62.38 
##      1      1      1      3      4      3      4      3      2      1      1 
##   62.4  62.43  62.45  62.48   62.5  62.56  62.57   62.6  62.63  62.64  62.71 
##      4      1      1     10     12      1      1      1      1      1      1 
##  62.73  62.75   62.8  62.81  62.83  62.88   62.9  62.95     63  63.03  63.07 
##      1      2      3      1      2      1     14      1     77      4      1 
##  63.13  63.14   63.2  63.21  63.26  63.28  63.29   63.3  63.32  63.36   63.4 
##      1      3      3      1      1      1      1      1      1      7     17 
##  63.45  63.47   63.5  63.57   63.6  63.61  63.65  63.67  63.68  63.72  63.75 
##      1      2     10      1      2      1      4      1      1      2      3 
##  63.76  63.79   63.8  63.82  63.86   63.9  63.91  63.95     64  64.08  64.09 
##      2      1      1      1      1      8      1      5    157      1      1 
##   64.1  64.14  64.18  64.21  64.22  64.25  64.28  64.29  64.33   64.4  64.42 
##      5      2      1      1      1      1      1      2      2      2      1 
##  64.44  64.49   64.5  64.54   64.6  64.64  64.67  64.75  64.78  64.79   64.8 
##      2      1      5      1      3      1      2      1      1      1     41 
##  64.83  64.85   64.9  64.95  64.96  64.98     65  65.04  65.07   65.1  65.11 
##      3      1     28      1      2      1    231      1      1      2      1 
##  65.12  65.19   65.2  65.27   65.3  65.33  65.35  65.37   65.4  65.42  65.43 
##      1      1      3      1      1      4      1      1     21      1      2 
##  65.44  65.45   65.5  65.52  65.57   65.6  65.61  65.65  65.66   65.7  65.75 
##      1      4      9      1      3      6      1      1      1     19      1 
##   65.8  65.83  65.84  65.85  65.86  65.87   65.9     66  66.02  66.06  66.15 
##      1      3      1      1      1      1      2    240      3      1      6 
##   66.2  66.21  66.23  66.24  66.28   66.3  66.34   66.4  66.42  66.43  66.44 
##      2      1      2      2      5      3      3      2      4      1      1 
##  66.45  66.48   66.5  66.51   66.6  66.63  66.67   66.7  66.71  66.72  66.75 
##      1      1      9      1     15      1      2      1      1      1      1 
##   66.8  66.84  66.98     67  67.05  67.13  67.14  67.15  67.19   67.2  67.22 
##     10      1      2     78      5      1      1      1      1      3      1 
##  67.24  67.25  67.31  67.32  67.33  67.37   67.4  67.41  67.44   67.5  67.54 
##      2      2      5      1      1      2      2      1      1     42      1 
##  67.56  67.57  67.58   67.6  67.67  67.75  67.78  67.79   67.8  67.82  67.88 
##      1      1      6      1      1      2      1      2      6      1      1 
##  67.92  67.99     68  68.03  68.06  68.08  68.14  68.16  68.17   68.2  68.33 
##      1      7    290      1      1      1      1      2      1      3      4 
##  68.35   68.4  68.42  68.43  68.45  68.47   68.5  68.53  68.56  68.57   68.6 
##      2     45      1      2      2      1      6      3      1      1      2 
##  68.61  68.66   68.7  68.72  68.74  68.75   68.8  68.85  68.86  68.88  68.95 
##      1      3      1      1      7      4      5      4      3      1      4 
##     69  69.02  69.04  69.12  69.13  69.17   69.2  69.21  69.25  69.29   69.3 
##     65      2      2      1      1      1      1      1      1      1      3 
##  69.33  69.36  69.37   69.4  69.43  69.49   69.5  69.58  69.64  69.66  69.67 
##      1      8      1      2      2      2      2      1      1      1      1 
##   69.7  69.71  69.83  69.85  69.92  69.95  69.96  69.99     70  70.11  70.15 
##      3      3      1      1      1      1      1      1    230      3      1 
##  70.17   70.2  70.22  70.25  70.26  70.29   70.3  70.33  70.38   70.4  70.46 
##      1      9      1      1      2      1      1      3      1     22      1 
##  70.47  70.48   70.5  70.53  70.56   70.6  70.71  70.75   70.8  70.84  70.85 
##      1      1      7      1      1      1      1      6      6      3      1 
##  70.86  70.88  70.91  70.92  70.95  70.97  70.98  70.99     71  71.04   71.1 
##      3      1      1      1      5      1      3      1     46      1     20 
##  71.11  71.14   71.2  71.23  71.25  71.28   71.3  71.33  71.39   71.4  71.43 
##      1      1      6      2      1      2      1      2      1      1      3 
##  71.45   71.5  71.55  71.56  71.57   71.6  71.66  71.69   71.7  71.71  71.73 
##      1      1      6      3      1      2      1      5      6      1      1 
##  71.76  71.81   71.9  71.93  71.94  71.96     72  72.05  72.06  72.07  72.14 
##      1      1      1      1      1      1    228      1      1      1      3 
##  72.16  72.18   72.2  72.25  72.31  72.38   72.4  72.41  72.45   72.5  72.55 
##      1      1      6      1      1      1      3      1      2     13      1 
##   72.6  72.67  72.71  72.72  72.75   72.8  72.83  72.86   72.9  72.91  72.93 
##      2      3      1      1      8      3      1      1     12      1      1 
##  72.95     73  73.06  73.08   73.1  73.14  73.15  73.18   73.2  73.23  73.25 
##      2     72      1      1      3      1      4      1      3      1      1 
##  73.28   73.3  73.33  73.35  73.38   73.4  73.41  73.43  73.44  73.46  73.47 
##      3      2     23      1      1      3      1      3      1      1      1 
##  73.49   73.5   73.6  73.66  73.67  73.68  73.69   73.7  73.71  73.75  73.76 
##      1     16      1      1      1      1      1      1      2      2      1 
##  73.79   73.8  73.86  73.92  73.95  73.98     74  74.03  74.04  74.06   74.1 
##      1     21      1      2      5      1     80      1      2      3      2 
##  74.12  74.17   74.2  74.25  74.28  74.33  74.37  74.39   74.4  74.43  74.45 
##      1      1      2     29      2      1      1      1      4      1      4 
##  74.49   74.5  74.53  74.57   74.6  74.61  74.62  74.67   74.7  74.72  74.75 
##      1      3      2      6      4      2      1      1      5      1      5 
##  74.76   74.8  74.82   74.9  74.93     75  75.03  75.08  75.09   75.1  75.15 
##      2      5      1      2      2    181      1      1      1      2      1 
##  75.16   75.2  75.25  75.33  75.34  75.36   75.4  75.43  75.44  75.46   75.5 
##      1      3      1      2      1      1      1      2      2      2      1 
##  75.52  75.53  75.54  75.57   75.6  75.65  75.75  75.76  75.77   75.8  75.83 
##      1      1      1      2     17      2      2      1      1      1      1 
##  75.95  75.96     76  76.03  76.05  76.12  76.13  76.19   76.2  76.22  76.23 
##      1      1     85      1      7      1      1      1      2      1      2 
##  76.24  76.25   76.3  76.38   76.4  76.43   76.5   76.6  76.67  76.75   76.8 
##      1      2      1      1      3      2     20      1     13      3     20 
##  76.81  76.84  76.86  76.89   76.9  76.93  76.95     77  77.01  77.03   77.1 
##      2      1      1      1      1      1      2     35      2      1      2 
##  77.14  77.18   77.2  77.22  77.23  77.29   77.3  77.33  77.35  77.36   77.4 
##      6      1      1      2      1      1      1      1      2      1     11 
##  77.45   77.5  77.57  77.58   77.6  77.61  77.64  77.65   77.7  77.71  77.75 
##      1      7      1      1      7      1      2      1      1      1      2 
##  77.78  77.79  77.83  77.84  77.85  77.86  77.88   77.9  77.93  77.96     78 
##      2      1      1      2      7      1      1      1      1      1    103 
##   78.1  78.18  78.19   78.2  78.23  78.25   78.3  78.31  78.33  78.36  78.42 
##      1      1      1      4      3      4      7      2      1      1      1 
##   78.5  78.55  78.56  78.57   78.6  78.67  78.75   78.8  78.81  78.85  78.87 
##     14      1      5      2      3      1      2      2      4      6      1 
##  78.93  78.94  78.95  78.98     79  79.05  79.09  79.13  79.14   79.2  79.22 
##      1      2      3      1     85      2      1      2      1     25      1 
##  79.26   79.3  79.31   79.4  79.41  79.42   79.5  79.54  79.63  79.66  79.67 
##      1      1      1      1      1      1     17      1      1      2      1 
##  79.74   79.8  79.83  79.84  79.85  79.86  79.88   79.9  79.97     80  80.03 
##      2      5      1      2      2      1      1      4      1    270      2 
##  80.07  80.09   80.1  80.14  80.16  80.19  80.22  80.23  80.25  80.33   80.4 
##      1      1     37      1      1      1      1      1      1      2      5 
##  80.43  80.45  80.46  80.47   80.5  80.54  80.57  80.63  80.66  80.71  80.75 
##      1      1      1      2      2      1      1      2      1      1      2 
##   80.8  80.81  80.85  80.86  80.88  80.94  80.95  80.99     81  81.01  81.02 
##      2      8      5      1      1      1      1      1    134      1      1 
##  81.05  81.08  81.16  81.18   81.2  81.24  81.29  81.31  81.36   81.4  81.43 
##      1      1      1      1      9      1      1      1      1      1      2 
##  81.45   81.5  81.51  81.53  81.57   81.6  81.62  81.67  81.69  81.71  81.75 
##      2      7      2      1      1      5      2      3      1      2      1 
##  81.76  81.79   81.8  81.82  81.85   81.9  81.98     82  82.02  82.03  82.07 
##      4      1      2      2      4      5      1     84      1      1      1 
##   82.1  82.17   82.2  82.23  82.25  82.29  82.31  82.33  82.35   82.4  82.44 
##      4      2      1      1      1      2      2      1      4      1      1 
##  82.49   82.5  82.57  82.63  82.67  82.68  82.69  82.71  82.73  82.74  82.76 
##      1      6      1      1      2      1      2      2      1      1      1 
##   82.8  82.83  82.85  82.86  82.88  82.95     83  83.05  83.15  83.16   83.2 
##     17      1      3      5      5      1     45      2      1      2      2 
##  83.23  83.25  83.26   83.3  83.33   83.4  83.43  83.47   83.5   83.6  83.66 
##      1      2      1      3      2      1      7      1      6      4      1 
##  83.67   83.7  83.71  83.76  83.79   83.8  83.81  83.84  83.85  83.86   83.9 
##      2      8      1      3      1      3      1      1      1      1      2 
##  83.93  83.94     84  84.01  84.12  84.15  84.21  84.23  84.24  84.28  84.29 
##      1      1    113      1      2      3      2      1      1      1      1 
##  84.39   84.4  84.47  84.49   84.5  84.58   84.6   84.7  84.76   84.8  84.83 
##      1      1      1      2      4      1     10      6      1      6      1 
##  84.95  84.96     85  85.05  85.08   85.1  85.14   85.2   85.3  85.33   85.4 
##      2      2    278      2      1      1      2      5      5     29      1 
##   85.5  85.59   85.6  85.67   85.7  85.72  85.73  85.75   85.8  85.84  85.86 
##     23      1      1      1      6      1      1      2      3      1      1 
##  85.88     86   86.1  86.13  86.14  86.16  86.17   86.2  86.22  86.23  86.25 
##      2     77      2      1      2      2      1      4      1      1      1 
##  86.28  86.29  86.33   86.4  86.43  86.46   86.5  86.55  86.57   86.6   86.7 
##      2      3      2      9      1      2      2     14      1      1      8 
##  86.71  86.79  86.83  86.86  86.91  86.95     87  87.05  87.07  87.12  87.19 
##      1      1      1      1      4      3     64      4      1      1      1 
##   87.2   87.3   87.4  87.43  87.45  87.46  87.48   87.5  87.53  87.55  87.59 
##      1      4      1      1      1      2      2      6      1      1      1 
##   87.6  87.64  87.65  87.67  87.68  87.75  87.78   87.8  87.86   87.9  87.91 
##      1      1      1      1      1      1      1      1      1      3      2 
##     88  88.14   88.2  88.22  88.29   88.3  88.33   88.4   88.5  88.53  88.55 
##     56      1     27      1      1      1      1     16      5      1      2 
##   88.6  88.61  88.67  88.68   88.7  88.71  88.73  88.74  88.75   88.8  88.84 
##      1      1      4      1      1      1      1      2      1      3      2 
##  88.85  88.86   88.9  88.95     89  89.06  89.08   89.1  89.14  89.17  89.18 
##      1      1      2      1     83      2      1      8      2      1      1 
##   89.2  89.22  89.25   89.3  89.34   89.4  89.43  89.49   89.5  89.55  89.59 
##     15      1      3      1      1      2      1      1      2      3      1 
##   89.6  89.67  89.68   89.7  89.75  89.77  89.78  89.84  89.91  89.98     90 
##      1      2      1      2      1      1      1      1      2      1    146 
##  90.03  90.06   90.1  90.12  90.14  90.17   90.2  90.25  90.38   90.4  90.43 
##      1      1     14      1      1      1      1      1      1      1      2 
##  90.49   90.5   90.6  90.61  90.64  90.67  90.68  90.71   90.8  90.86   90.9 
##      2      2      2      1      2      3      1      2      2      1      6 
##  90.95  90.96     91  91.06   91.1  91.18   91.2  91.25   91.3  91.35  91.36 
##     19      1     32      1      1      1      8      1      1      1      2 
##  91.37  91.44  91.46   91.5  91.55  91.58  91.67  91.75  91.76  91.77   91.8 
##      1      1      1      9      1      1      6      1      1      1      3 
##  91.81  91.85  91.86   91.9  91.92  91.93  91.95  91.96     92  92.09   92.1 
##      1      2      1      2      1      1      1      1    103      1      8 
##  92.14  92.17  92.19  92.25  92.29  92.33  92.34   92.4  92.42  92.43  92.45 
##      2      1      1      2      1      1      1      3      1      1      1 
##   92.5  92.55  92.57  92.58   92.6  92.63  92.67   92.7  92.71   92.8  92.82 
##      3      2      4      1      1      3      2      1      1      2      1 
##  92.85  92.86  92.89   92.9  92.95     93  93.06  93.12  93.17   93.2  93.21 
##      1      1      2      3      1     54      1      1      1      2      1 
##  93.29   93.3  93.38   93.5  93.54  93.57   93.6  93.62  93.67  93.75  93.77 
##      2      1      5      5      1      3     13      1      1      4      1 
##   93.8  93.81  93.86  93.88  93.93  93.94     94  94.14  94.16   94.2  94.25 
##      5      1      3      1      1      1     35      1      2      1      1 
##  94.26  94.29  94.37   94.4  94.41  94.48   94.5   94.6  94.62  94.63  94.71 
##      1      4      4      1      1      1     15      1      1      2      1 
##  94.73  94.75   94.8  94.86  94.89  94.95     95  95.02  95.04  95.07   95.2 
##      1      1      1      1      1      1     93      1      1      1      2 
##  95.25  95.27  95.33   95.4   95.5  95.57   95.6  95.64  95.67  95.71  95.85 
##      1      1      1      5      6      2      4      1      4      1      1 
##  95.91  95.95     96  96.13  96.14   96.2  96.21  96.25  96.26   96.3  96.33 
##      1      1     43      2      1      1      1      2      1     22      1 
##  96.36   96.4  96.43  96.49   96.5  96.56  96.67   96.8  96.83   96.9  96.94 
##      1      4      1      1      2      1      3      2      1      2      2 
##  96.95     97  97.02   97.1   97.2  97.21  97.25  97.29   97.3  97.33   97.4 
##      1     31      1      1      7      1      3      2      7      1      5 
##  97.41  97.46   97.5   97.6  97.67   97.7  97.71  97.74  97.75   97.8  97.88 
##      1      1     11      1      1      2      4      1      4      1      1 
##  97.99     98  98.02  98.04  98.05   98.1  98.14  98.25  98.33   98.4   98.5 
##      2     64      2      2      1      3      1      1      3     12      1 
##   98.6  98.63  98.64  98.67  98.72  98.74  98.75  98.76  98.88     99  99.02 
##      5      1      1      2      1      1      3      1      1     78      1 
##  99.06  99.15  99.18  99.21  99.22  99.24  99.28   99.3  99.32  99.33  99.43 
##      1      1      1      1      1      3      1      1      1      1      2 
##  99.45   99.5  99.51  99.63  99.64   99.7   99.8  99.81  99.85   99.9    100 
##      1      9      1      2      1      3      2      1      1      4     84 
##  100.1  100.2 100.25 100.29  100.3 100.33  100.4 100.44  100.5 100.55 100.67 
##      1      7      2      1      1      4      3      1      2      2      2 
##  100.7 100.71  100.8 100.85 100.86 100.87 100.89 100.91    101 101.16  101.2 
##      1      2     15      1      3      1      1      1     35      1      1 
## 101.21 101.22 101.25 101.27 101.29 101.33  101.4 101.43  101.5 101.53 101.65 
##      1      1      3      1      1      2      1      3      4      1      5 
## 101.67 101.68  101.7 101.71 101.75  101.8 101.87    102  102.2 102.21 102.25 
##      2      1     12      2      1      1      1     23      1      1      2 
##  102.3 102.31 102.32 102.33 102.35 102.38 102.41 102.43 102.45 102.49  102.5 
##      1      1      1      2      1      1      2      1      1      1      7 
## 102.51 102.55  102.6 102.65 102.66 102.71 102.73  102.8 102.86  102.9 102.93 
##      1      1      5      1      1      1      1     13      1      1      1 
##    103 103.05 103.07 103.11 103.18  103.2 103.22 103.28  103.3 103.33 103.35 
##     16      3      1      1      4      4      1      1      1      1      1 
## 103.36 103.37  103.5 103.51 103.59  103.6 103.67 103.68  103.7 103.75 103.76 
##      1      1      8      1      1      1      1      1      2      4      1 
##  103.8 103.95    104  104.1 104.16 104.17 104.25 104.33 104.49  104.5 104.55 
##      1      1     27      1      1      1      1      2      1      4      8 
##  104.6 104.67 104.68 104.71 104.72 104.73 104.75  104.8 104.81 104.85 104.91 
##      2      3      1      1      3      1      1      5      1     17      1 
## 104.94 104.97 104.98    105 105.11 105.13  105.2 105.22 105.25  105.3 105.31 
##      1      1      1     75      1      1      3      1      1      1      1 
## 105.34  105.4 105.47  105.5 105.61 105.66 105.67 105.69 105.71 105.77  105.8 
##      1      1      2      6      1      1      1      1      2      1      1 
## 105.81    106 106.06 106.09 106.13 106.15  106.2 106.21 106.25 106.26  106.3 
##      1     37      1      1      1      1      4      1      1      1      1 
## 106.31 106.33 106.35 106.36  106.4 106.47  106.5 106.55 106.56 106.57 106.64 
##      1      1      4      1      1      1     11      6      3      2      1 
## 106.67  106.7 106.71  106.8 106.84 106.85 106.86  106.9    107 107.05  107.1 
##      1      1      1      2      1     11      2      1     60      1     17 
## 107.17  107.2 107.29  107.3 107.33 107.38  107.4 107.42  107.5 107.57  107.6 
##      1      8      1      1      1      1      1      1      5      1      3 
## 107.63 107.67 107.71 107.75  107.8 107.82 107.83    108 108.02 108.06 108.09 
##      1      2      1      1      1      1      1     45      1      1      1 
##  108.1 108.15 108.17 108.24 108.26  108.3 108.31 108.33 108.34 108.36  108.4 
##      1      1      2      2      2      3      1      3      1      1      2 
##  108.5 108.54 108.56 108.57 108.65  108.7 108.71 108.73 108.75  108.8 108.83 
##      1      1      3      1      2      1      1      1      1      2      1 
## 108.86 108.88  108.9 108.91 108.92 108.97 108.99    109 109.03  109.1 109.13 
##      1      1      7      1      1      1      1     32      2      3      1 
##  109.2  109.3 109.33 109.36  109.5 109.63 109.65 109.71 109.75  109.8 109.83 
##      2      1      1      1      6      1      2      1      1      7      1 
## 109.86  109.9 109.96    110 110.05  110.2 110.25  110.3 110.32 110.33 110.36 
##      1      1      1     91      1      2      1      2      1      2      1 
##  110.4 110.43  110.5  110.6 110.64 110.67  110.7 110.71 110.72 110.75  110.8 
##      1      1      9      1      1      1     39      1      1      3      2 
## 110.83 110.94    111 111.14 111.15  111.2 111.25 111.27  111.3  111.5  111.6 
##      1      1     22      2      4      2      2      1      1      4      2 
## 111.67 111.73 111.75 111.78  111.8 111.94 111.96    112 112.05 112.12 112.16 
##      1      1      4      2      2      1      1     34      2      1      1 
##  112.2 112.22 112.33 112.36  112.4 112.41 112.42  112.5 112.57  112.6 112.63 
##      4      3      1      2      1      1      2     14      1      2      4 
##  112.7 112.71  112.8 112.88 112.95    113 113.05  113.1 113.14 113.19  113.2 
##      4      1      4      1      1     29      7      1      1      1      1 
##  113.3 113.31 113.33  113.4 113.52 113.55 113.57  113.6 113.67  113.7 113.75 
##      1      1      1      7      1      1      2      2      1      1      1 
##  113.8  113.9 113.91    114 114.04 114.14 114.15  114.2 114.29  114.3 114.33 
##      1      3      1     41      1      2      1      3      2      1      1 
## 114.48  114.5 114.51  114.6 114.65 114.71 114.73 114.75 114.76 114.78  114.8 
##      1      5      1      1      1      1      1      4      1      1      2 
##  114.9 114.95    115  115.2  115.3 115.33  115.4  115.5 115.55 115.67 115.68 
##      3      1     88     20      1      1      2      8      1      2      1 
##  115.7 115.74 115.75 115.76  115.8 115.82 115.85 115.92 115.93    116  116.1 
##      1      2      2      1      1      1      1      1      1     22     17 
## 116.18 116.33  116.4 116.43  116.5 116.53 116.57  116.6 116.61 116.64 116.67 
##      2      1      2      3     14      1      1      3      1      2      1 
##  116.7 116.71 116.75  116.8 116.85  116.9    117 117.04 117.19  117.2 117.21 
##      1      2      1      1      2      2     38      2      1      6      1 
## 117.22 117.25 117.29  117.3 117.43 117.48  117.5  117.6 117.63 117.73 117.74 
##      2      1      2      4      1      1      1      2      1      1      1 
## 117.75 117.76 117.81 117.83 117.84  117.9    118 118.02 118.06  118.1 118.13 
##      1      1      3      1      1      8     31      1      1      3      1 
## 118.17 118.19  118.2 118.24 118.25 118.29  118.3 118.35  118.4  118.5 118.57 
##      1      1      2      1      1      1      1      1      2      9      1 
## 118.62 118.67  118.7 118.71  118.8 118.84 118.86 118.99    119 119.04 119.08 
##      1      2      2      1      5      1      1      1     33      1      2 
##  119.1 119.16  119.2 119.25 119.29 119.33 119.35 119.43  119.5 119.64  119.7 
##      2      1      2      7      1      1      2      1      1      1     13 
## 119.71 119.75 119.76 119.85  119.9 119.97    120 120.02  120.1 120.14 120.16 
##      1      1      1      2      2      1     96      1      2      1      1 
##  120.2 120.27  120.3 120.33 120.38  120.4 120.43  120.5 120.57  120.6 120.71 
##      1      1      1      1      5      1      3      1      1     34      1 
##  120.8  120.9    121 121.01 121.17 121.25 121.28 121.33 121.35  121.4 121.47 
##      1      1     26      1      1      3      1      4      1      2      1 
##  121.5  121.6 121.67  121.7  121.8 121.85 121.93 121.98    122 122.23 122.29 
##     32      1      1      1      1      1      1      1     27      1      1 
## 122.33  122.4 122.43  122.5 122.53 122.57 122.67  122.7 122.75 122.85 122.89 
##      5      2      2      4      1      1      2      2      2      2      1 
##    123  123.1 123.12  123.2 123.21 123.25 123.28  123.3 123.33 123.38  123.4 
##     64      1      1      5      1      1      1      2      4      2      1 
## 123.43  123.5 123.57  123.6 123.62 123.64 123.67 123.68 123.71 123.74 123.77 
##      1     14      1      2      1      2      1      1      1      1      1 
## 123.88 123.97    124  124.1 124.14  124.2 124.22 124.33 124.38  124.4 124.45 
##      1      2     20      1      5      3      1      1      1      1      1 
##  124.5 124.55 124.58  124.7 124.74  124.8 124.82    125  125.1  125.2 125.22 
##      4      1      1      1      1      2      1     40      2      1      1 
## 125.25  125.3  125.4 125.43 125.46  125.5 125.51 125.52 125.54 125.58  125.6 
##      1      2      1      3      1      3      1      1      1      1      1 
## 125.71 125.82 125.89  125.9    126  126.1 126.15  126.2  126.3 126.33  126.4 
##      1      1      1      3     55      1      1      2      3      2      2 
## 126.41  126.5 126.57  126.6 126.64 126.65 126.67 126.71 126.74  126.8 126.86 
##      1      2      1      1      2      2      4      2      1      5      1 
##  126.9    127 127.03 127.14  127.2 127.25 127.26 127.27  127.3 127.31  127.5 
##      2     33      1      2      2      2      1      1      1      1      5 
## 127.58 127.59 127.67 127.71 127.75  127.8 127.82 127.83  127.9    128 128.04 
##      1      1      3      3      2      2      1      1      1     36      1 
## 128.05 128.07 128.14  128.2 128.25 128.28 128.35 128.44 128.57 128.65  128.7 
##      1      1      1      1      1      1      1      1      1      1      4 
##  128.8  128.9    129 129.16  129.2 129.27 129.29 129.33  129.4 129.48  129.5 
##      2      3     57      1      3      1      2      1      1      1      2 
## 129.57 129.58  129.6  129.7 129.72 129.77 129.86  129.9 129.92    130 130.01 
##      1      1      3      1      3      1      1      1      1     32      2 
## 130.05 130.06  130.1 130.13 130.25 130.33 130.34 130.35  130.4 130.43  130.5 
##      4      1      1      2      1      1      1      1      1      1      9 
## 130.55 130.67 130.75  130.8 130.82 130.87  130.9    131 131.06 131.16  131.2 
##      4      3      1      2      1      1      5     37      1      1      1 
## 131.25 131.29  131.4 131.43  131.5 131.59  131.6 131.63 131.67 131.85 131.86 
##      1      1      6      1      4      1      6      2      2      2      1 
##    132 132.05 132.16 132.19 132.29  132.3 132.33 132.36 132.44  132.5 132.56 
##     17      2      1      1      1      3      1      1      3      6      1 
##  132.6 132.67  132.8 132.85 132.86 132.87  132.9 132.91 132.96    133 133.07 
##      5      1      2      4      2      1      1      1      1     36      1 
## 133.14 133.17  133.2 133.21 133.25 133.29  133.4  133.5 133.67 133.74 133.75 
##      1      1      5      1      1      1      2      3      1      2      2 
##    134 134.06  134.1 134.14  134.3  134.4 134.43  134.5 134.67 134.73 134.75 
##     84      1      8      1      1      1      2      2      2      3      1 
## 134.85 134.86    135  135.1 135.13 135.14 135.15  135.2 135.25 135.28 135.29 
##      8      1     98      2      1      1      1      3      1      1      1 
##  135.3 135.31 135.33  135.4 135.49  135.5 135.57  135.6 135.63 135.67  135.9 
##      1      1      1      1      1      3      1      3      1      1      9 
##    136 136.08 136.14  136.2 136.44  136.5  136.6 136.67 136.71 136.73  136.8 
##     32      1      1      2      1     17      1      1      2      2      1 
## 136.85    137 137.14  137.2 137.21 137.33 137.43  137.5 137.57 137.65 137.67 
##      1     21      1      1      1      1      2      4      1      1      3 
##  137.7 137.71 137.75  137.8  137.9    138 138.01 138.09 138.13 138.25 138.29 
##      5      2      2      3      1     12      1      1      1      1      1 
## 138.38  138.4  138.5  138.6 138.64 138.67 138.79  138.8 138.86    139 139.02 
##     17      1      4      6      1      1      1      3      1     25      1 
## 139.05  139.1 139.18  139.2 139.33 139.35  139.4 139.48  139.5 139.52 139.54 
##      2      1      1      2      1      1      2      1      5      1      1 
## 139.67 139.68  139.7 139.72 139.75  139.9 139.95 139.99    140 140.16 140.21 
##      1      3      1      1      1      1      1      1     78      1      1 
## 140.25 140.31 140.33 140.38  140.4 140.43 140.57  140.6 140.63  140.7 140.71 
##      1      1      3      2      4      1      1      2      1      1      1 
##  140.8  140.9 140.94 140.98    141 141.05  141.3 141.33  141.4  141.5 141.55 
##      3      1      1      1     25      2      1      3      1      2      2 
## 141.57  141.6 141.67 141.68  141.7 141.71 141.91    142 142.03  142.1  142.2 
##      1      3      3      1      1      1      1     26      1      1      3 
## 142.21 142.22  142.3 142.36 142.48  142.5 142.53 142.63 142.64 142.65 142.67 
##      1      1      1      1      1      7      1      1      1      1      2 
## 142.68 142.71 142.86 142.97    143  143.1  143.2 143.25 143.28 143.29 143.33 
##      1      1      1      1     13      7      2      1      1      1      2 
## 143.34  143.4 143.43  143.5 143.55 143.57  143.6 143.73 143.86 143.97    144 
##      2      1      2      3      1      2      1      1      1      1     26 
## 144.14  144.4 144.43  144.5 144.57 144.65 144.75 144.76  144.8 144.88  144.9 
##      1      3      2      3      1      1      2      1      1      1      3 
##    145 145.02  145.1 145.14  145.2 145.23 145.33  145.4 145.44  145.5 145.53 
##     43      1      2      1      2      1      1      2      1      2      2 
##  145.6 145.67 145.71 145.75  145.8 145.87 145.88    146  146.1 146.11 146.22 
##      2      3      2      2      1      3      1     30      2      1      1 
## 146.25  146.3 146.33 146.38  146.4 146.46  146.5 146.67  146.7 146.71 146.75 
##      2      4      3      1      2      1      3      4      2      1      3 
## 146.93 146.94 146.95    147 147.02 147.07 147.13  147.2 147.36 147.43  147.6 
##      1      1      2     35      1      1      1      1      1      1      5 
## 147.67 147.69  147.7 147.71 147.74 147.84 147.86  147.9 147.94    148 148.07 
##      2      1      1      1      1      1      1      3      1      6      1 
##  148.1 148.12 148.14 148.17 148.25 148.29  148.3 148.34  148.4  148.5 148.57 
##      3      1      1      1      2      1      1      1      1      5      1 
##  148.6  148.7 148.75 148.79    149 149.14 149.18  149.2 149.29 149.33 149.38 
##      1      1      1      1     24      2      1      3      1      1      1 
##  149.4 149.45  149.5 149.52 149.63 149.71 149.74 149.81    150 150.22 150.25 
##      4      3      4      1      1      1      1      1     40      1      2 
## 150.43 150.48  150.5 150.53 150.57 150.58  150.6 150.69 150.71  150.8 150.81 
##      1      2      1      2      1      1      3      1      3      1      1 
## 150.82 150.83 150.92    151  151.1 151.14 151.19  151.2 151.23 151.25 151.29 
##      1      1      1     23      1      4      1      1      1      1      1 
##  151.3 151.33  151.4 151.43  151.5 151.56 151.64 151.67 151.76 151.87    152 
##      2      2      1      1      6      1      1      1      2      1     21 
##  152.1 152.15 152.16  152.2 152.25 152.28  152.3 152.33 152.38 152.43  152.5 
##      6      1      1      1      1      1      1      1      3      1      4 
## 152.71  152.8 152.86  152.9    153 153.03 153.07  153.1 153.23 153.25 153.29 
##      1      1      1      1     44      1      1      2      1      2      1 
## 153.37 153.39 153.42  153.5 153.57  153.6 153.68 153.71 153.75  153.9 153.96 
##      1      1      2      5      3      1      2      1     20      1      1 
##    154 154.08  154.1 154.25 154.29  154.3 154.32 154.35 154.38  154.4  154.5 
##     56      2      1      1      1      2      1      1      2      1      4 
## 154.54  154.6 154.71 154.77  154.8 154.98    155 155.11 155.25 155.33  155.5 
##      1      1      1      1      8      3     34      1      1      1      3 
## 155.52 155.54 155.57  155.6 155.64 155.67  155.7 155.71  155.8 155.83 155.86 
##      3      1      2      1      1      1      3      1      2      1      1 
##    156  156.1 156.22 156.34  156.4 156.45 156.48  156.5 156.51 156.54  156.6 
##     16      1      1      1      2      1      1      1      1      1      6 
## 156.67 156.73 156.83 156.96    157 157.08  157.2 157.25 157.27 157.28 157.31 
##      1      1      1      1     13      3      4      2      1      2      1 
## 157.37 157.42  157.5 157.52 157.53 157.59  157.6 157.67  157.7  157.8 157.82 
##      1      1      5      1      2      1      1      4      1      1      1 
## 157.85 157.86 157.87 157.99    158  158.1 158.16  158.2  158.3 158.33 158.35 
##      1      1      1      1     20      2      1      1      1      2      1 
## 158.38  158.4  158.5 158.57 158.58  158.6 158.63 158.67 158.73 158.75 158.77 
##      1      1      3      1      1      1      1      2      1      1      1 
## 158.85 158.86  158.9    159 159.07 159.14  159.2 159.28 159.29 159.33 159.34 
##      3      1      2     28      2      2      2      1      1      2      1 
## 159.35 159.38  159.5  159.6 159.74 159.75 159.85    160 160.08 160.17  160.2 
##      1      1      8      1      1      1      1     80      1      1      2 
## 160.33 160.43 160.48  160.5 160.53 160.67 160.68  160.7 160.71 160.75 160.98 
##      1      2      1      2      1      1      1      1      3      1      2 
##    161 161.08  161.1 161.25 161.29 161.33  161.4 161.45  161.5  161.6 161.67 
##     24      1      3      1      3      1      4      1      4      2      2 
## 161.71 161.75  161.8 161.86    162  162.1 162.12 162.14 162.15 162.24 162.29 
##      1      1      2      2     24      1      1      3      1      1      1 
##  162.3 162.47  162.5 162.56 162.71 162.86 162.94    163 163.05 163.08  163.2 
##      2      1      2      1      1      1      1     13      1      1      1 
## 163.25 163.33 163.35 163.43 163.48  163.5  163.6 163.65 163.67 163.71  163.8 
##      1      4      1      1      1      3      1      1      1      1      4 
##    164 164.02  164.1 164.13 164.15 164.29  164.4 164.57  164.6 164.63 164.65 
##     46      1      1      1      2      2      2      1      1      1      1 
## 164.67 164.71  164.8    165 165.08  165.1 165.11 165.15 165.23 165.25 165.33 
##      1      1      2     37      1      2      1      1      2      1      2 
## 165.37 165.38  165.4  165.5 165.55  165.6 165.63 165.71 165.75  165.8    166 
##      1      1      1      2      2      4      1      1      4      2     30 
## 166.03 166.05 166.14 166.24 166.43 166.45  166.5 166.56  166.6 166.67 166.71 
##      2      2      2      1      1      1      5      1      3      2      1 
## 166.75 166.91 166.92    167 167.09 167.17 167.18  167.2 167.23 167.25 167.28 
##      1      1      1     20      1      1      7      5      1      3      1 
##  167.4 167.43  167.5 167.52 167.54  167.6 167.73 167.75  167.8 167.85    168 
##      1      1      2      1      1      1      1      1      1      2     16 
## 168.13 168.14 168.15 168.25  168.3 168.33 168.38  168.5 168.57  168.6 168.63 
##      1      1      1      1      1      1      1      1      1      3      4 
## 168.67  168.7 168.71 168.72 168.75  168.8 168.89 168.93    169 169.08  169.2 
##      1      1      1      1      1      3      1      1     34      1      1 
## 169.36 169.37 169.43 169.48  169.5  169.6 169.67 169.77 169.83 169.98    170 
##      1      1      1      4      5      2      1      1      1      1     31 
##  170.1  170.2 170.24 170.33 170.57  170.6 170.67  170.7 170.93 170.95    171 
##      1      1      1      2      1      1      1      2      1      1     30 
## 171.14 171.18  171.2 171.25 171.33 171.39  171.5 171.53 171.71  171.9 171.94 
##      1      1      3      1      1      1      5      1      2      8      2 
##    172  172.1 172.38  172.4  172.5  172.6 172.63 172.67 172.71  172.8 172.81 
##     53      1      1      1      1      1      1      3      2      9      1 
## 172.86  172.9    173 173.05  173.1  173.2 173.21 173.25 173.45  173.5  173.6 
##      1      1     26      1      2      1      1      2      1      2      1 
## 173.67 173.75 173.79    174 174.01 174.04 174.14 174.25  174.4 174.54 174.55 
##      2      1      1     24      1      1      1      1      1      1      1 
##  174.6  174.7 174.71 174.76  174.8 174.92 174.95    175 175.14 175.17  175.2 
##      2      1      1      1      3      1      1     25      1      1      2 
## 175.23 175.24 175.26 175.33 175.34  175.4  175.5 175.56 175.57 175.58 175.71 
##      2      1      1      1      1      1      7      1      1      1      1 
##  175.8    176 176.16 176.18 176.25  176.4 176.43 176.44 176.64 176.67 176.78 
##      1     20      1      1      2      1      2      1      1      2      1 
##  176.8 176.86  176.9    177 177.14 177.17 177.25 177.41 177.47  177.5 177.57 
##      2      1      1      9      2      1      1      1      1      7      2 
##  177.6 177.62 177.67 177.79  177.8    178  178.1 178.13  178.2 178.29 178.31 
##      1      1      1      1      1     15      1      1      1      1      1 
## 178.33 178.39 178.43 178.46  178.5 178.56 178.64 178.67 178.75 178.88    179 
##      2      1      1      1      1      1      1      2      3      1     41 
## 179.06  179.1  179.2 179.34  179.4 179.41  179.6 179.63 179.66 179.71 179.77 
##      1      5      2      1      2      1      1      1      1      1      1 
## 179.81 179.83 179.86 179.88 179.94    180 180.02 180.18 180.33 180.34 180.38 
##      1      1      1      1      1     55      1      1      1      1      1 
## 180.42 180.47  180.5 180.55 180.67 180.75  180.8    181 181.11 181.14 181.22 
##      1      1      1      1      1      1      3     20      1      1      1 
##  181.3 181.31 181.33 181.43  181.5 181.54  181.6  181.8 181.88  181.9 181.94 
##      1      1      1      1      2      1      1      4      1      2      1 
##    182 182.06  182.1 182.16  182.2 182.25 182.33  182.4  182.5  182.6  182.8 
##     17      1      1      1      3      3      3      1      2      1      1 
## 182.86 182.92    183 183.05 183.16 183.33 183.45  183.5  183.6 183.65 183.75 
##      3      1     11      1      1      3      1      2      3      1      9 
## 183.83 183.86 183.99    184 184.25 184.29 184.33 184.45  184.5 184.54 184.55 
##      1      2      1     23      1      1      1      3     12      1      1 
##  184.6 184.64 184.73  184.8 184.86    185  185.1 185.25 185.33 185.37  185.4 
##      1      1      1      1      1     18      1      1      1      1      4 
## 185.43 185.44 185.46  185.5 185.57  185.6 185.71 185.75 185.96 185.99    186 
##      1      1      1      1      1      1      2      1      1      2     11 
## 186.02 186.13 186.25 186.29 186.33  186.5  186.6 186.67 186.68 186.74 186.83 
##      1      1      2      1      1      3      2      1      1      1      1 
## 186.88  186.9    187 187.14 187.15 187.19  187.2 187.24 187.25 187.33  187.5 
##      2      1      9      2      1      1      1      1      2      2      6 
## 187.52 187.53 187.57 187.64  187.7 187.71  187.8 187.88    188 188.03  188.1 
##      1      1      1      1      1      1      1      1      9      1      1 
## 188.14 188.29 188.38  188.4 188.43  188.6 188.65 188.67 188.71 188.75 188.78 
##      2      1      1      2      1      2      2      1      1      1      1 
## 188.86 188.89    189  189.1 189.19  189.2 189.25 189.33 189.42 189.43  189.5 
##      1      1     47      1      1      1      1      3      3      1      1 
##  189.6 189.67 189.75 189.86    190  190.1 190.18  190.2 190.23 190.27 190.33 
##      2      2      2      1     26      1      1      1      2      1      1 
## 190.35  190.4  190.6 190.67  190.7 190.88 190.96 190.97    191 191.14 191.41 
##      1      1      1      1      2      2      2      1     29      1      1 
## 191.43  191.5 191.55  191.6 191.67  191.7    192  192.2 192.33 192.38  192.5 
##      1      1      1      3      1      1     26      1      1      1      7 
## 192.54  192.6 192.66 192.67 192.68  192.8    193 193.03  193.1 193.12 193.13 
##      1      3      2      3      1      2     14      1      2      1      2 
## 193.16 193.29 193.33 193.43  193.5  193.6 193.67 193.71 193.77 193.81 193.83 
##      1      1      2      1      2      1      2      1      1      1      1 
## 193.87    194 194.29 194.33 194.49  194.5 194.71 194.73 194.86  194.9    195 
##      1     47      1      1      1      2      1      1      1      1     31 
## 195.26 195.33  195.4 195.43 195.45  195.5 195.58  195.6 195.67  195.8 195.86 
##      1      1      1      2      2      1      1      3      1      2      1 
## 195.95 195.98    196 196.25 196.33 196.34 196.42  196.5 196.52 196.67 196.71 
##      1      1     24      2      1      1      1      2      1      1      1 
## 196.92 196.93    197  197.1 197.14  197.4  197.6 197.61 197.67  197.7  197.8 
##      1      1      6      3      1      1      2      1      2      3      1 
## 197.83  197.9    198 198.23 198.29 198.31 198.33  198.4  198.5  198.8    199 
##      1      1     19      1      1      1      4      1      3      1     38 
##  199.1 199.15  199.2 199.26 199.29  199.4  199.5  199.6 199.63 199.67 199.75 
##      1      1      2      1      2      3      2      1      1      1      1 
##    200 200.05  200.1 200.43 200.57 200.67  200.7 200.71  200.8 200.86    201 
##     42      1      1      1      1      2      2      1      1      1     18 
## 201.05 201.14 201.25 201.33  201.4 201.43  201.5  201.6 201.67  201.8 201.86 
##      1      1      1      1      1      2      4      6      1      1      2 
##    202 202.13 202.33  202.5 202.51  202.7 202.77 202.83 202.88    203  203.1 
##     21      1      1      6      1      1      1      1      1     13      1 
## 203.13 203.18 203.19 203.21  203.4  203.6 203.67 203.71 203.75  203.8    204 
##      1      1      1      1      1      1      3      2      2      1     13 
##  204.1 204.16 204.27 204.29 204.33  204.5 204.62 204.67  204.7 204.74 204.75 
##      1      2      1      1      2      1      1      1      1      1      2 
##  204.8 204.93    205  205.1 205.14  205.2 205.25 205.33  205.5  205.6 205.67 
##      1      1     24      1      1      1      1      1      3      1      3 
## 205.71    206 206.03  206.1 206.12  206.2 206.22 206.33 206.36  206.4  206.5 
##      1     21      2      2      1      1      1      2      1      1      1 
## 206.51 206.78 206.86    207 207.05  207.1 207.18  207.2 207.23 207.25 207.29 
##      1      1      1     18      1      1      1      1      1      1      1 
##  207.3 207.33  207.4  207.5 207.52 207.67 207.76  207.8    208 208.02 208.03 
##      1      1      1      4      1      1      1      1      7      1      1 
## 208.05 208.08 208.14 208.28 208.33 208.34 208.43  208.5 208.57 208.75  208.8 
##      1      1      1      1      1      1      1      3      1      1      2 
## 208.86    209  209.1  209.2 209.29 209.33  209.6 209.71 209.75  209.8 209.86 
##      1     46      4      1      1      1      2      2      1      1      2 
##    210 210.14 210.43  210.6 210.75 210.78 210.86    211 211.12  211.2 211.25 
##     32      1      1      1      1      1      2     38      1      2      1 
##  211.5  211.6 211.67  211.8    212 212.14 212.16 212.29 212.31  212.5 212.54 
##      2      1      1      1     23      3      1      1      1      5      1 
## 212.58  212.6 212.71 212.73  212.8 212.88    213 213.33  213.4 213.43  213.5 
##      1      1      1      1      2      1     11      2      1      1      2 
## 213.57  213.6 213.67  213.7 213.71 213.75    214 214.33  214.6 214.67 214.71 
##      1      1      1      1      1      5     23      1      1      1      1 
## 214.84 214.86 214.87 214.92 214.99    215 215.24 215.33  215.6 215.67 215.71 
##      2      1      1      1      1      9      1      3      2      1      1 
##    216 216.13 216.25 216.33 216.43  216.5 216.66 216.67 216.84 216.89 216.93 
##     19      1      1      1      1      1      1      2      1      1      2 
##    217  217.1 217.14  217.2 217.33  217.5  217.6 217.67 217.71 217.75 217.82 
##      6      1      2      1      3      1      2      4      1      1      1 
## 217.86    218  218.4  218.6 218.67 218.75    219 219.03 219.14  219.2 219.29 
##      1      9      1      1      1      1     33      1      1      1      1 
## 219.32 219.33 219.43  219.5 219.58  219.6 219.67  219.8 219.86    220 220.33 
##      1      2      1      3      1      1      1      1      1     13      1 
##  220.4  220.5 220.53 220.87    221 221.07 221.25 221.38 221.43  221.5  221.6 
##      1      2      1      1     23      1      1      1      1      1      1 
## 221.62    222 222.02 222.07 222.14  222.2 222.26 222.33  222.5 222.67 222.86 
##      1     21      1      1      1      2      1      2      3      1      1 
## 222.93    223 223.07 223.33  223.5 223.57    224  224.1 224.39  224.4 224.44 
##      1      8      1      1      2      2     15      1      1      1      1 
##  224.5 224.67  224.9    225 225.08 225.14 225.28 225.33 225.45  225.5  225.6 
##      1      6      1     19      1      1      1      1      1      2      3 
## 225.67 225.71  225.9    226 226.14 226.33  226.5 226.57 226.73    227 227.06 
##      2      1      1      9      1      1      1      1      1      5      1 
##  227.1 227.22  227.6 227.67 227.81 227.86 227.92    228 228.32 228.33  228.5 
##      4      1      1      1      1      1      1      6      1      1      1 
## 228.57  228.6 228.75 228.89    229 229.13 229.17  229.2 229.33  229.4  229.5 
##      2      1      1      1     18      1      1      1      1      1      2 
## 229.67 229.71    230  230.3 230.35  230.5  230.6 230.64 230.67 230.86    231 
##      1      1     62      1      1      2      1      1      1      1     21 
## 231.13 231.22 231.43  231.5  231.6  231.8 231.84    232 232.33  232.5  232.6 
##      1      1      1      1      2      1      1     11      2      1      1 
## 232.61 232.67 232.91    233 233.05  233.1 233.92    234 234.29  234.6 234.67 
##      1      1      1     10      1      1      1     14      1      1      2 
##  234.7    235 235.07 235.29 235.57  235.6 235.67 235.71 235.95    236  236.1 
##      1      7      1      1      1      2      2      1      1     12      1 
## 236.14  236.5 236.67 236.71 236.86    237 237.33 237.34  237.5 237.71  237.9 
##      1      2      2      1      1     12      2      1      3      1      1 
##    238  238.1 238.14  238.3  238.5 238.57 238.63 238.75    239  239.3 239.43 
##      7      1      1      1      1      2      1      1     19      1      1 
##  239.5 239.65 239.66 239.67    240  240.5  240.6    241  241.1  241.5  241.6 
##      1      1      1      1     17      1      2     19      1      2      1 
## 241.67 241.75    242  242.1 242.25 242.32 242.33 242.57  242.6 242.67 242.75 
##      1      1      9      1      1      1      2      1      1      1      1 
## 242.84    243 243.16 243.17 243.33  243.5 243.67 243.71  243.8 243.81    244 
##      2      6      1      1      1      1      1      1      1      1     17 
## 244.09 244.31 244.55 244.72    245  245.1  245.2  245.3 245.33    246 246.02 
##      1      1      1      1      9      1      1      1      4     13      1 
##  246.2 246.43  246.5  246.8    247 247.09  247.2 247.33 247.57 247.67    248 
##      1      1      1      1      5      1      1      2      1      1      8 
##  248.1 248.16 248.29 248.36  248.5  248.8    249 249.23 249.38  249.5 249.67 
##      1      1      2      1      2      1     12      1      1      2      1 
##    250 250.32 250.33  250.5    251 251.14 251.43  251.5  251.6 251.73    252 
##     17      1      1      1     10      1      1      1      1      1     15 
##  252.3 252.33 252.67    253 253.25 253.33 253.49  253.5  253.6 253.65  253.8 
##      1      1      1      7      2      1      1      1      1      1      2 
##    254  254.1 254.62 254.67    255 255.45 255.84    256  256.5 256.75    257 
##      8      1      1      1      6      2      1      6      1      1      5 
## 257.34  257.5  257.6 257.67 257.75    258 258.33 258.43    259 259.33    260 
##      1      1      2      1      2      7      1      1     19      1      8 
##  260.5  260.6 260.71    261 261.33  261.4  261.5    262  262.5  262.6    263 
##      1      1      1      9      1      1      1     15      1      1      4 
## 263.57    264  264.5    265 265.25    266 266.06  266.3  266.4  266.5  266.6 
##      1      8      1      7      1      7      1      1      1      2      2 
##    267  267.5 267.86    268  268.3  268.5    269    270 270.38  270.5 270.51 
##      2      1      1      5      1      2      9     10      1      1      1 
## 270.71    271    272  272.5  272.7    273 273.09 273.25  273.5    274 274.45 
##      1     13      3      1      1      2      1      1      1      6      1 
##  274.5 274.67    275 275.25 275.33  275.6    276 276.43 276.46  276.6 276.83 
##      1      1      6      1      1      1      3      1      1      2      1 
##    277  277.5 277.71    278 278.14  278.5 278.57    279 279.33 279.36  279.5 
##      5      1      1      1      1      1      1      3      1      1      1 
##    280 280.33    281    282 282.03 282.32 283.32  283.5  283.6    284 284.29 
##      1      1      5      5      1      1      1      1      1      4      1 
##  284.7 284.86    285    286  286.1 286.25  286.6 286.79    287    288  288.1 
##      1      2      1      3      1      1      1      1      2      2      1 
##    289  289.5  289.6  289.8    290 290.67    291    292  292.5 292.71    293 
##      4      1      1      2      2      1      2      8      1      1      2 
##  293.1 293.33    294 294.29  294.5 294.86    295  295.5 295.67    296 296.33 
##      1      1      3      1      2      1      3      1      2      1      1 
##  296.5 296.75    297 297.29 297.57    298 298.71    299  299.2 299.33    300 
##      1      1      4      1      1      5      1      6      1      1      2 
##  300.4  300.6 300.86 301.43    302 302.11 302.67 302.86    303  303.7    304 
##      2      1      1      1      1      1      1      1      2      1      2 
##    305    306  306.5  306.7    307  307.5 307.67    308  308.4 308.57    309 
##     10      4      1      1      1      1      1      3      1      2      1 
##    310    311 311.25  311.6  311.7    312 313.71    314  314.5    315 315.33 
##      5      3      1      1      1      1      1      1      1      5      1 
## 315.71  316.5    317 317.67    318 318.82    319  320.7    322    323    324 
##      1      1      3      1      2      1      1      1      4      1      1 
##    325    326 326.71  327.4    328 328.33    329    330 330.57    331 331.43 
##      4      1      1      1      3      1      3      2      1      2      1 
##    332    335 336.57    337    338  339.4    340 340.71    343 344.67  350.2 
##      2      2      1      1      2      1      4      1      2      1      1 
## 350.75    351    352    353 353.67    357 358.75    359    360    363    367 
##      1      1      1      1      1      2      1      1      1      1      2 
##    369 372.71    377    378    382    388    392    402 426.25    437    450 
##      1      1      1      2      1      2      1      1      1      1      1

required_car_parking_spaces

As for parking spaces, most of the bookings include 0 parking space, however the ones that do seem to have no cancellations proportially. Indicatint hat when people request a parking space, they no not (easily) cancel their booking.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = required_car_parking_spaces))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = required_car_parking_spaces, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per required_car_parking_spaces (conditional probability)
df_required_car_parking_spaces <- bookings_train %>% 
  group_by(is_cancelled, required_car_parking_spaces) %>% 
  summarize(n = n()) %>% 
  group_by(required_car_parking_spaces) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_required_car_parking_spaces, aes(x = required_car_parking_spaces, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$required_car_parking_spaces))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$required_car_parking_spaces))
## [1] 0 1 2 3
# Unique vals + count
sort(table(bookings_train$required_car_parking_spaces))
## 
##     3     2     1     0 
##     1    19  3272 20743

total_of_special_requests

It can be observed within the graphs that most people do not have any special guests, but there seems to be a pattern in which the more special guests that are included in the booking, the higher the chance of non-cancellation.

ggplot(data = bookings_train) +
  geom_bar(mapping = aes(x = total_of_special_requests))

# Visualisation of cancelled per weeknumber
ggplot(bookings_train, 
       aes(x = total_of_special_requests, 
           fill = is_cancelled)) + 
  geom_bar(position = "dodge")

# Visualisation of cancelled per total_of_special_requests (conditional probability)
df_total_of_special_requests <- bookings_train %>% 
  group_by(is_cancelled, total_of_special_requests) %>% 
  summarize(n = n()) %>% 
  group_by(total_of_special_requests) %>% 
  mutate(prob = n / sum(n))
## `summarise()` has grouped output by 'is_cancelled'. You can override using the
## `.groups` argument.
ggplot(df_total_of_special_requests, aes(x = total_of_special_requests, y = prob, fill = is_cancelled)) + 
  geom_col() 

# Check missing values
sum(is.na(bookings_train$total_of_special_requests))
## [1] 0
# Check for bizarre values
sort(unique(bookings_train$total_of_special_requests))
## [1] 0 1 2 3 4 5
# Unique vals + count
sort(table(bookings_train$total_of_special_requests))
## 
##     5     4     3     2     1     0 
##     8    83   539  2904  7052 13449